Not Applicable
Not Applicable
The present invention relates to Global Positioning Systems (GPS), and more particularly, to methods of improving GPS satellite acquisition and reacquisition performance by utilizing navigation information from an integrated Global Positioning/Inertial Guidance (referred to herein as xe2x80x9cGP/IGxe2x80x9d) navigation system.
In order to provide position information, a GPS receiver must acquire four or more satellites from the GPS constellation. xe2x80x9cAcquiringxe2x80x9d a satellite means to synchronize to a timing code that the satellite produces. Typically the timing code from the satellite includes a pseudo-random (PR) data stream embedded in a waveform that the satellite continuously broadcasts. Each satellite in the GPS constellation is characterized by a unique PR code, and the transmission of that code begins at a particular time each day. Thus, synchronizing to a particular PR code from a satellite identifies the particular satellite, and provides time-of-day (TOD) information accurate to within the propagation delay from the satellite to the receiver. The GPS receiver independently maintains the same PR code that the satellite produces. The PR code that the GPS receiver receives from the satellite is delayed with respect to the code maintained in GPS receiver due to the propagation delay from the satellite to the receiver. To acquire the satellite, the GPS receiver delays its own version of the PR code with respect to the code it receives from the satellite until the codes match. The amount of delay the receiver adds corresponds to the propagation delay (and thus the distance) to the satellite.
In order to acquire a satellite (or reacquire if the satellite signal drops out for an extended period), the GPS receiver must xe2x80x9cguessxe2x80x9d an initial delay, then incrementally increase the delay while searching for a code match. The better the guess, the shorter the time needed to match the codes and declare acquisition. Since the delay is directly related to the distance from the receiver to the satellite, an accurate estimate of the distance to the satellite may be used to generate an accurate guess of the initial delay.
GPS navigation systems are widely used and are rapidly being incorporated into many newly manufactured commercial vehicles. Such vehicles often operate in city environments, however, resulting in substantial blackout periods while in so-called xe2x80x9curban canyons,xe2x80x9d i.e., while between tall buildings that obscure the line-of-sight to one or more of the GPS satellites. Further, due to the nature of such city environments, a satellite may come into view for brief periods, sometimes only fractions of a second, in the gaps created by cross streets. Prior art search techniques generally require too much time to find the delay value required for synchronization with the satellite signal to take advantage of these brief windows of opportunity in which the satellite is in view. FIG. 1 illustrates a block diagram of a prior art GPS navigation unit 10 receiving a first signal 12 from first satellite 20, a second signal 14 from second satellite 22, third signal 16 from third satellite 24 and fourth signal 18 from fourth satellite 26. GPS navigation unit 10 includes an antenna 28, an RF receiver 30, an RF amplifier 32, a GPS system digital signal processor (DSP) 34, a correlator 36, reference PR patterns 38.
In operation, antenna 28 receives the first signal 12 from the first satellite 20 and communicates the signal 12 to RF receiver 30. The RF amplifier 32 amplifies the signal 12 from the receiver 30 and passes the signal 12 to the GPS DSP 34, the digital signal processor for the entire GPS unit. The DSP 34 includes a correlator 36 that incrementally compares the pseudo random code embedded in the first signal 12 from first satellite 20 to all of the stored bit patterns 38 and provides an indication (i.e., a correlation peak) when a match occurs. Stored bit patterns 38 are complete, time-dependent listings of the pseudo random code xe2x80x9csignaturesxe2x80x9d used to uniquely identify each satellite. The DSP 34 shifts each of the stored bit patterns 38 in time against the first signal 12 until the correlator 36 indicates a match. A match in the codes identifies the first satellite 20, and the amount of shift delay indicates the amount of propagation delay between the satellite and the GPS unit 10. Once the DSP 34 indicates a match, the first satellite 20 is xe2x80x9cacquired.xe2x80x9d Typical prior art GPS receivers include multiple processing channels (i.e., multiple correlators) that simultaneously search through the possible PR codes to acquire multiple satellites. Only one such channel is shown in FIG. 1. Once all four (or more) satellites are acquired, the GPS unit 10 determines its position by way of triangulation methods well known in the art.
When the line of sight to one of the four satellites is obstructed (e.g., a building lies between the satellite and the GPS unit), the signal from that satellite xe2x80x9cdrops out,xe2x80x9d i.e., the obstruction attenuates the signal amplitude so that the receiver can no longer detect it. When the line of sight to the satellite is restored, the GPS unit must reacquire the satellite before position data will again be available. The prior art reacquisition algorithms typically begin searching for the lost satellite signal by incrementally delaying the corresponding PR code through the correlator (as described herein), with respect to an initial delay value, until a correlation peak occurs. In some prior art systems, the initial delay value is simply set to zero, i.e., the algorithm assumes no prior knowledge of the satellite location with respect to the GPS receiver. Other prior art systems may estimate the initial delay as the last delay used in the correlator prior to the signal dropping out. In either case, the amount of time necessary to reacquire the satellite may be substantial, especially if the position of the GPS receiver has significantly changed. Hence, a general need exists for a method of improving the acquisition and reacquisition performance of GPS receiving systems. It is an object of the present invention to substantially overcome the above-identified disadvantages and drawbacks of the prior art.
U.S. Pat. No. 6,125,325, entitled xe2x80x9cGPS receiver with cross-track hold,xe2x80x9d assigned to SiRF Technology, Inc. (Santa Clara, Calif.), describes a terrestrial C/A code GPS receiver system that derives along track position information while tracking as few as two GPS satellites by use of conventional altitude hold and a cross track hold mode in which the maximum expected deviation of the vehicle from the expected track is estimated by, for example, knowledge or prediction of the width of the roadway or other track. To maintain accuracy, cross track hold is alternated with clock hold to update the cross track estimate when changes in vehicle direction are detected or when a predetermined period has elapsed.
U.S. Pat. No. 6,041,280, entitled xe2x80x9cGPS car navigation system,xe2x80x9d assigned to SiRF Technology, Inc. (Santa Clara, Calif.), describes a GPS car navigation system that derives GPS position update information from motion of the car along the actual track. Turns along the track are detected when they actually occur and are compared with the predicted turns so that the time and position at the actual turn can be used to update the then current GPS derived position of the vehicle. Updating position information with actual turn data improves the accuracy of GPS navigation especially during single satellite navigation.
U.S. Pat. No. 6,018,704 entitled xe2x80x9cGPS receiver,xe2x80x9d (no assignee listed)xe2x80x94first inventor: Kohli; Sanjai (Manhattan Beach, Calif.), describes a terrestrial C/A code GPS receiver system that operates as an odometer to measure vehicle distance traveled by processing signals from GPS satellites to determine along track information relative to the track being followed by the vehicle and accumulative and displaying along track position information as an odometer.
U.S. Pat. No. 5,777,580 entitled xe2x80x9cVehicle location system,xe2x80x9d assigned to Trimble Navigation Limited (Sunnyvale, Calif.) describes a method and apparatus for determining vehicle present location using a location determination system (LDS), such as GPS, GLONASS, Loran or an inertial navigation system, that receives LDS signals from two or more sources. An LDS signal antenna and receiver/processor, an interrogation signal (IS) receiver means and IS responder means are electrically connected and carried on the vehicle. When a vehicle trigger event occurs, a specified vehicle IS is broadcast and is received by the IS receiver means. The IS receiver means causes the LDS receiver/processor to obtain vehicle present location information and to provide such information for the IS responder means, for transmission to an IS contact receiver (selected based upon vehicle present location). The IS receiver means and IS responder means are independently selected to be a cellular phone receiver, a paging signal receiver, a WAN/LAN workstation, or an Earth-satellite-Earth radiowave link, such as ORBCOMM.SM. Optionally, the LDS receiver/processor is kept in a xe2x80x9csleeperxe2x80x9d mode, to conserve power until the IS receiver receives and responds to the specified IS, or is periodically activated to update the LDS antenna present location. Presence of the LDS equipment, IS receiver means and/or IS responder means are concealed on the vehicle. In another embodiment, a trigger event sensor is positioned on the vehicle and the responder means is caused to transmit to the vehicle present location information when a vehicle trigger event occurs, such as unauthorized movement of or entry into the vehicle, or collision of the vehicle.
U.S. Pat. No. 5,185,610 entitled xe2x80x9cGPS system and method for deriving pointing or attitude from a single GPS receiver,xe2x80x9d assigned to Texas Instruments Incorporated (Dallas, Tex.) describes a GPS single-receiver pointing/attitude system that derives pointing/attitude measurements by correlating a selected GPS code (either P or C/A), recovered from GPS navigation signals using a single GPS receiver with multiple GPS antennas (a reference antenna and at least two slave antennas for pointing or three for attitude). For a two antenna pointing application, the GPS receiver includes, for each receiver channel, the incoming GPS signals are applied to three code correlators assigned to the reference antenna, and three code correlators assigned to the slave antenna, which provide corresponding reference and slave I and Q correlation outputs. The single-receiver pointing technique involves: (a) using the reference I and Q correlation outputs to establish a conventional reference antenna tracking loop; and (b) processing the reference and slave I and Q correlation outputs (using differential carrier Doppler phase or code phase measurements) to determine phase differences from which pointing can be computed
The foregoing and other objects are achieved by the invention which in one aspect comprises a method of reacquiring a satellite signal within an integrated GP/IG navigation system. The method includes detecting a loss of synchronization between a PR code embedded in the satellite signal and a corresponding reference PR code. The method includes receiving position data from an inertial guidance unit. The position data is representative of an estimated position of the GP/IG navigation system. The method also includes estimating a distance value, corresponding to the distance from the GP/IG navigation system to the satellite, as a function of the position data, and deriving an initial delay value from the distance value. In one embodiment, the method also includes deriving the uncertainty in the position estimate. This uncertainty is used to determine the width of a search window within which the code tracking loops should search for the satellite. The smaller the search window the shorter the re-acquisition time should be. The width of the search window can be predicted by making use of the position uncertainty computed by the Kalman filter. The method further includes delaying the reference PR code, with respect to the PR code embedded in the satellite signal, by an offset delay value substantially equal to the initial delay value. The method includes incrementally varying the offset delay value (i) until the PR code embedded in the satellite signal is synchronized with the reference PR code, or (ii) until the offset delay value equals a predetermined end limit value.
Another embodiment of the invention further includes increasing the offset delay value until the PR code embedded in the satellite signal is synchronized with the reference PR code, or until the offset delay value equals a predetermined start limit value.
Another embodiment of the invention further includes decreasing the offset delay value until the PR code embedded in the satellite signal is synchronized with the reference PR code, or until the offset delay value equals a predetermined start limit value.
Another embodiment of the invention further includes incrementally varying the offset delay value within a search window. The search window includes a first edge characterized by the start limit value and a second edge characterized by the end limit value, such that the amount of delay from the first edge to the second edge defines the window length.
Another embodiment of the invention further includes determining the window length, wherein the window length is a fixed value.
In another embodiment of the invention, the fixed value is a predetermined function of one or more static parameters of the GP/IG navigation system.
In another embodiment of the invention, the one or more static parameters are selected from the group consisting of the accuracy of an associated gyroscope set, the accuracy of an associated odometer, and combinations thereof.
Another embodiment of the invention further includes determining a window length, wherein the window length is a variable.
In another embodiment of the invention, the variable is a predetermined function of one or more dynamic parameters associated with the GP/IG navigation system.
In another embodiment of the invention, the one or more dynamic parameters are selected from the group consisting of (i) an amount of time the loss of synchronization has lasted, (ii) a figure of merit associated with the position data, (iii) a degradation value characterizing an associated gyroscope set, (iv) a degradation value characterizing an associated odometer, and combinations thereof.
Another embodiment of the invention further includes correlating the PR code embedded in the satellite signal with the corresponding PR code, providing a correlation output representative of an extent of correlation between the PR code embedded in the satellite signal and the corresponding PR code, and comparing the correlation output to a predetermined threshold. The loss of synchronization is detected when the correlation output is less than the predetermined threshold.
Another embodiment of the invention further includes generating the position data by combining gyroscope data and odometer data via a Kalman filter. The Kalman filter produces the position data as a function of the gyroscope data and the odometer data.
Another embodiment of the invention further includes receiving position solution data from a GPS portion of the GP/IG navigation system, providing the position solution data to the Kalman filter, combining the gyroscope data, the odometer data and the position solution data via the Kalman filter. The Kalman filter produces the position data as a function of the gyroscope data, the odometer data and the position solution data.
In another embodiment of the invention, deriving an initial delay value further includes dividing the distance value by a propagation velocity of the satellite signal.
In another aspect, the invention comprises a system for reacquiring a satellite signal within an integrated GP/IG navigation system. The system includes a synchronization detector for detecting a loss of synchronization between a PR code embedded in the satellite signal and a corresponding reference PR code. The system includes an inertial guidance unit for generating position data representative of an estimated position of the GP/IG navigation system. The system further includes a distance estimator for estimating a distance value, corresponding to the distance from the GP/IG navigation system to the satellite, as a function of the position data. The system also includes a search controller for deriving an initial delay value from the distance value. The search controller delays the reference PR code, with respect to the PR code embedded in the satellite signal, by an offset delay value substantially equal to the initial delay value. The search controller also incrementally varying the offset delay value until the PR code embedded in the satellite signal is synchronized with the reference PR code, or until the offset delay value equals a predetermined end limit value.
In another embodiment of the invention, the search controller further decreases the offset delay value until the PR code embedded in the satellite signal is synchronized with the reference PR code, or until the offset delay value equals a predetermined start limit value.
In another embodiment of the invention, the search controller further decreases the offset delay value until the PR code embedded in the satellite signal is synchronized with the reference PR code, or until the offset delay value equals a predetermined start limit value.
In another embodiment of the invention, the search controller further incrementally varies the offset delay value within a search window. The search window includes a first edge characterized by the start limit value, and a second edge characterized by the end limit value. The amount of delay from the first edge to the second edge defines a window length.
In another embodiment of the invention, the search controller further determines a window length having a fixed value.
In another embodiment of the invention, the fixed value is a predetermined function of one or more static parameters of the GP/IG navigation system.
In another embodiment of the invention, the one or more static parameters are selected from the group consisting of the accuracy of an associated gyroscope set, the accuracy of an associated odometer, and combinations thereof.
In another embodiment of the invention, the search controller further determines a variable window length.
In another embodiment of the invention, the variable window length is a predetermined function of one or more dynamic parameters associated with the GP/IG navigation system.
In another embodiment of the invention, the one or more dynamic parameters are selected from the group consisting of (i) an amount of time the loss of synchronization has lasted, (ii) a figure of merit associated with the position data, (iii) a degradation value characterizing an associated gyroscope set, (iv) a degradation value characterizing an associated odometer, and combinations thereof.
Another embodiment of the invention further includes a correlator for correlating the PR code embedded in the satellite signal with the corresponding PR code, and providing a correlation output representative of an extent of correlation between the PR code embedded in the satellite signal and the corresponding PR code. The search controller compares the correlation output to a predetermined threshold, and the synchronization detector detects the loss of synchronization when the correlation output is less than the predetermined threshold.
In another embodiment of the invention, the inertial guidance unit generates the position data by combining gyroscope data and odometer data via a Kalman filter, such that the Kalman filter produces the position data as a function of the gyroscope data and the odometer data.
In another embodiment of the invention, the Kalman filter receives position solution data from a GPS portion of the GP/IG navigation system. The Kalman filter further combines the gyroscope data, the odometer data and the position solution data so as to produce the position data as a function of the gyroscope data, the odometer data and the position solution data.
In another embodiment of the invention, the search controller derives the initial delay value by dividing the distance value by a propagation velocity of the satellite signal.
In another aspect, the invention comprises a method of acquiring a satellite signal within an integrated GP/IG navigation system. The method includes receiving system position (and rate of change of the system position, i.e., velocity) data from an inertial guidance unit. The position data is representative of an estimated position of the GP/IG navigation system. The method includes acquiring satellite position data from the associated ephemeris data. The satellite position data is representative of a position of a satellite associated with the satellite signal. The method also includes estimating a distance value, corresponding to the distance from the GP/IG navigation system to the satellite, as a function of the system position data and the satellite position data, and deriving an initial delay value from the distance value. The method includes delaying a reference PR code associated with the satellite signal, with respect to a PR code embedded in the satellite signal, by an offset delay value substantially equal to the initial delay value. The method further includes incrementally varying the offset delay value (i) until the PR code embedded in the satellite signal is synchronized with the reference PR code, or (ii) until the offset delay value equals a predetermined end limit value.
In another aspect, the invention comprises a system for acquiring a satellite signal within an integrated GP/IG navigation system. The system includes an inertial guidance unit for generating position data representative of an estimated position of the GP/IG navigation system. The system also includes the ephemeris data representative of the position of a satellite associated with the satellite signal. The system further includes a distance estimator for estimating a distance value, corresponding to the distance from the GP/IG navigation system to the satellite, as a function of the position data and the satellite position data. The system also includes a search controller for deriving an initial delay value from the distance value. The search controller also delays the reference PR code, with respect to the PR code embedded in the satellite signal, by an offset delay value substantially equal to the initial delay value. The search controller also incrementally varies the offset delay value until the PR code embedded in the satellite signal is synchronized with the reference PR code, or until the offset delay value equals a predetermined end limit value.
In another aspect, the invention comprises a system for reacquiring a satellite signal within an integrated GP/IG navigation system. The system includes detection means for detecting a loss of synchronization between a PR code embedded in the satellite signal and a corresponding reference PR code. The system includes navigational means for generating position data representative of an estimated position of the GP/IG navigation system and estimating means for estimating a distance value, corresponding to the distance from the GP/IG navigation system to the satellite, as a function of the position data. The system further includes controller means for deriving an initial delay value from the distance value. The controller means also delays the reference PR code, with respect to the PR code embedded in the satellite signal, by an offset delay value substantially equal to the initial delay value. The controller means further incrementally varies the offset delay value until the PR code embedded in the satellite signal is synchronized with the reference PR code, or until the offset delay value equals a predetermined end limit value.
In another aspect, the invention comprises a system for acquiring a satellite signal within an integrated GP/IG navigation system. The system includes navigational means for generating position data representative of an estimated position of the GP/IG navigation system, and storage means for storing satellite position data representative of a position of a satellite associated with the satellite signal. The system also includes estimating means for estimating a distance value, corresponding to the distance from the GP/IG navigation system to the satellite, as a function of the position data and the satellite position data. The system further includes controller means for deriving an initial delay value from the distance value. The controller means also delays the reference PR code, with respect to the PR code embedded in the satellite signal, by an offset delay value substantially equal to the initial delay value. The controller means further incrementally varies the offset delay value until the PR code embedded in the satellite signal is synchronized with the reference PR code, or until the offset delay value equals a predetermined end limit value.